Release 10.1A: OpenEdge Development:
Progress Dynamics Advanced Development
Class Maintenance tool and class customizations
The following section describes some of the procedures to follow and the information you need to customize a class, to add or modify attributes, and to save the customized class. This section provides information about:
Updating class details
The standard information about a class is maintained in the Class tab. To customize a class, you must provide information about the relationship that the selected class has with other classes. For information about the Class tab, see the "Class tab" section.
To customize a class, you must provide information in the following fields:
- Class Extends — This field contains the name of the current ancestors (parent) classes for the selected class. A class only stores the name of its parent. This information is used to construct the class hierarchy, in conjunction with the customizing class, and determines the inheritance and behavior for the object.
Note: For this procedure, you do not need to provide information for the Class Object Name.- Customizing Class — The field contains the name of a class that customizes the current class. This class is a class that customizes the behavior of the selected class. Modified attribute values, UI events, and supported links are stored against this class. It is also used to construct the class hierarchy and modify the behavior of objects inheriting from the selected class and its descendants (children).
When customizing a class, consider the following:
- The class used to customize another typically should not have any objects directly associated with it, as this would cause those objects to behave unexpectedly.
- The customizing class cannot be part of the same class hierarchy as the selected class, as this would cause multiple inheritance. The Class Maintenance tool checks to prevent this behavior.
Updating attribute values
You can view and modify the attribute values associated with a class. The attribute value can also be seen as the default value that a class has for an attribute. This includes all attribute values associated with the ancestor classes of the current class. Attributes are displayed in the updateable browser. For a description of the Attributes tab, see the "Attributes tab" section.
The attribute details reflect the currently selected row in the attribute value browser. Any attribute value can be updated, including run-time and derived attributes. You can:
When the browser is in update mode, you can update a value in the browser. Typically, you would enter the new value into the Value column of the browser, although in some cases you must use the lookup button to capture a value. The behavior of these is determined by either the Lookup Type in the attribute definition, or by a default based on the data type of the attribute when no Lookup Type has been specified on the attribute definition.
After you change the value, you can either use the TAB key to leave the cell or chose the Save button to save the row.
To add an existing attribute to a class, select the Attribute tab and then choose the Add button on the Tool bar at the top of the maintenance pane to enable the Attribute column.
After selecting an attribute name, the attribute value can be captured.
You can add an attribute definition by using the tool bar at the bottom of the Attribute maintenance pane. The attribute details to be captured are on the Description, Advanced and Design tabs in the Attribute Maintenance Section. Once an attribute has been added, it can be added to a class as an attribute value in the normal manner.
Saving attribute values
When you save a changed or new attribute value, the save process verifies whether the current class is a standard class that ships with the product.
Note: Progress Software Corporation recommends that you do not store customizations against the classes shipped with the product, but that you create a custom class and store all customizations against that class. The Class Maintenance Tool automates this process.If a customizing class already exists for the class, then that class is used to store all customizations.
If there is no customizing class, then the Create custom class dialog box opens when you save your changes. From this dialog box, you can choose Yes or Always to store your changes against a customizing class. For more information about these options, see the "Class Maintenance Preferences dialog box" section.
You use the Custom class name dialog box to specify the name of the customizing class. You can specify any class name, including the names of existing classes. If the class specified already exists, then it is used as a customizing class. If the specified class does not exist, then you must specify a name to create a new customizing class.
After you save the customizing values, the attribute value browser displays the name of the customizing class in the Where Stored column.
Deleting attributes
You can delete any attribute that is stored against the selected class or its customizing class by choosing the Delete button from the tool bar at the bottom of the Attributes maintenance tab.
You can only delete those values stored against the selected class or its customizing class, if any. Other values that are stored against a parent class affects more than just the selected class and therefore cannot be deleted.
Note: To save and delete user interface (UI) events and supported links, you follow the procedures described for attributes and use the Events and Supported links tabs.
|
Copyright © 2005 Progress Software Corporation www.progress.com Voice: (781) 280-4000 Fax: (781) 280-4095 |